1. Field of the Invention
The present invention is directed to methods and subsystems which may be provided in an intelligent bent sheet metal designing, planning and manufacturing system and the like.
2. Discussion of Background Information
FIGS. 1-3 illustrate, in a simplified view, an example of a conventional bending workstation 10 for bending a sheet metal part (workpiece) 16 under the control of a manually created program downloaded to various control devices provided within the workstation. The illustrated bending workstation 10 is a BM100 Amada workstation.
(a) The Hardware and Its Operation
FIG. 1 shows an overall simplified view of bending workstation 10. FIG. 2 shows a partial view of a press brake 29, positioned to perform a bend an a workpiece 16. The elements shown in FIG. 2 include a robot arm 12 having a robot arm gripper 14 grasping a workpiece 16, a punch 18 being held by a punch holder 20, and a die 19 which is placed on a die rail 22. A backgage mechanism 24 is illustrated to the left of punch 18 and die 19.
As shown in FIG. 1, bending workstation 10 includes four significant mechanical components: a press brake 29 for bending workpiece 16; a five degree-of-freedom (5 DOF) robotic manipulator (robot) 12 for handling and positioning workpiece 16 within press brake 29; a material loader/unloader (L/UL) 30 for loading and positioning a blank workpiece at a location for robot 12 to grab, and for unloading finished workpieces; and a repositioning gripper 32 for holding workpiece 16 while robot 12 changes its grasp.
Press brake 29 includes several components as illustrated in FIGS. 1-3. Viewing FIG. 3, press brake 29 includes at least one die 19 which is placed on a die rail 22, and at least one corresponding punch tool 18 which is held by a punch tool holder 20. Press brake 29 further includes a backgage mechanism 24.
As shown in FIG. 2, robot arm 12 includes a robot arm gripper 14 which is used to grasp workpiece 16. As shown in FIG. 1, material loader/unloader 30 includes several suction cups 31 which create an upwardly directed suction force for lifting a sheet metal workpiece 16, thereby allowing L/UL 30 to pass workpiece 16 to gripper 14 of robot 12, and to subsequently retrieve a finished workpiece 16 from gripper 14 and unload the finished workpiece.
In operation, loader/unloader (L/UL) 30 will lift a blank workpiece 16 from a receptacle (not shown), and will raise and move workpiece 16 to a position to be grabbed by gripper 14 of robot 12. Robot 12 then maneuvers itself to a position corresponding to a particular bending stage located within bending workstation 10. Referring to each of FIGS. 1 and 3, stage 1 comprises the stage at the leftmost portion of press brake 29, and stage 2 is located to the right of stage 1 along die rail 22.
If the first bend is to be made at stage 1, robot 12 will move workpiece 16 to stage 1, and as shown in FIG. 2, will maneuver workpiece 16 within press brake 29, at a location between punch tool 18 and die 19, until it reaches and touches a backstop portion of backgage mechanism 24. With the aid of backgage mechanism 24, the position of workpiece 16 is adjusted by robot arm 12. Then, a bend operation is performed on workpiece 16 at stage 1. In performing the bend operation, die rail 22 moves up (along a D axis), as indicated by the directional arrow A in FIG. 2. As punch tool 18 and die 19 simultaneously contact workpiece 16, so that workpiece 16 assumes a relatively stable position within press brake 29, gripper 14 will release its grasp on workpiece 16, and robot 12 will move gripper 14 away from workpiece 16. Press brake 29 will then complete its bending of workpiece 16, by completing the upward movement of die 19 until the proper bend has been formed.
Once die 19 is engaged against punch tool 18, holding workpiece 16 in its bent state, before disengaging die 19 by lowering press brake 29, robot arm 12 will reposition its robot arm gripper 14 to hold workpiece 16. Once gripper 14 is holding workpiece 16, die 19 will be disengaged by releasing press brake 29. Robot 12 then maneuvers and repositions workpiece 16 in order to perform the next bend in the particular bend sequence that has been programmed for workpiece 16. The next bend within the bend sequence may be performed either at the same stage, or at a different stage, such as stage 2, depending upon the type of bends to be performed, and the tooling provided within press brake 29.
Depending upon the next bend to be performed, and the configuration of workpiece 16, the gripping position of gripper 14 may need to be repositioned. Repositioning gripper 32, shown in FIG. 1, is provided for this purpose. Before performing the next bend, for which repositioning of robot gripper 14 is needed, workpiece 16 will be moved by robot 12 to repositioning gripper 32. Repositioning gripper 32 will then grasp workpiece 16 so that robot gripper 14 can regrip workpiece 16 at a location appropriate for the next bend or sequence of bends.
(b) The Control System
The bending workstation 10 illustrated in FIG. 1 is controlled by several control devices which are housed separately, including an MM20-CAPS interface 40, a press brake controller 42, a robot controller 44, and a load/unload unit controller 46. Press brake controller 42 comprises an NC9R press brake controller, and robot controller 44 comprises a 25B robot controller, which are each supplied by Amada. Each of press brake controller 42 and robot controller 44 have their own CPU and programming environments. Load/unload unit controller 46 comprises a stand alone Programmable Logic Controller (PLC), and is wired to respective consoles provided for press brake controller 42 and robot controller 44.
Each of controllers 42, 44, and 46 has a different style bus, architecture, and manufacturer. They are coordinated primarily by parallel I/O signals. Serial interfaces are provided for transporting bending and robot programs to the controllers, each of which is programmed in a different manner. For example, logic diagrams are used to program the PLC of the load/unload controller 46, and RML is used to program robot controller 44.
(c) The Design/Manufacture Process
The overall design/manufacture process for bending sheet metal includes several steps. First, a part to be produced is typically designed using an appropriate CAD system. Then, a plan is generated which defines the tooling to be used and a sequence of bends to be performed. Once the needed tooling is determined, an operator will begin to set up the bending workstation. After the workstation is set up, the plan is executed, i.e., a workpiece is loaded and operation of the bending workstation is controlled to execute the complete sequence of bends on a blank sheet metal workpiece. The results of the initial runs of the bending workstation are then fed back to the design step, where appropriate modifications may be made in the design of the part in view of the actual operation of the system.
In the planning step, a plan is developed for bending workstation 10 in order to configure the system to perform a sequence of bending operations. Needed hardware must be selected, including appropriate dies, punch tools, grippers, and so on. In addition, the bending sequence must be determined, which includes the ordering and selection of bends to be performed by bending workstation 10. In selecting the hardware, and in determining the bending sequence, along with other parameters, software will be generated to operate bending workstation 10, so that bending workstation 10 can automatically perform various operations of the bending process.
A plan for a BM100 bending workstation includes generated software such as an NC9R press brake program and a 25B RML robot program. Each of these programs may be created with the use of an initial part design created from a CAD system. Both the robot program and the bending program must be developed manually, and are quite labor-intensive. Previously developed programs are classified by the of bends and/or by the directions of the bends. Engineers examine each part style to determine if previously developed and classified programs may be used or whether a new program must be written. However, since each classified program typically supports only a narrow range of acceptable part dimensions, new programs must frequently be written by the engineers. The final RML robot program, when complete, is compiled and downloaded by the MM20-CAPS system 40 to robot controller 44. The bending program is entered and debugged an a control pendant provided on press brake controller 42. After entering the robot and bending programs into the system, an operator performs several manual operations to walk the system through the several operations to be performed. For example, an operator will manually operate a hand-held pendant of the robot controller to manually move the robot to the loading and unloading positions, after which the interface console 40 will store the appropriate locations into the final RML program to be compiled and downloaded to robot controller 44. In addition, in producing the bending program, the operator may control the system to follow the planned bend sequence, in order to determine the values for the backgage position (L axis) and the die rail position (D axis).
(d) Intelligent Manufacturing Workstations
Various proposals have been made in order to overcome many of the drawbacks with prior systems such as the BM100 Amada bending workstation, and research has been conducted in the area of intelligent manufacturing workstations. Some proposed features of intelligent sheet metal bending workstations included features such as open architecture, including open system configurations and distributed decision making, and enhanced computer aided design and geometric modeling systems.
A paper entitled "Intelligent Manufacturing Workstations" was presented at the 1992 ASME Winter Annual Meeting regarding Knowledge-Based Automation of Processes on Nov. 13, 1992 by David Alan Bourne; the content of the Paper is expressly incorporated herein by reference in its entirety. In the Paper, an intelligent manufacturing workstation is defined as a self-contained system that takes a new design for a part and manufactures it automatically. The process is stated to include automated setup, part programming, control, and feedback to design.
The Paper discusses several components of an overall intelligent manufacturing workstation, including features such as open architecture, the use of software modules that communicate via a query-based language, part design, operations planning, workstation control, and geometric modeling.
(1) Open Architecture
It has been recognized that an effective intelligent manufacturing workstation should have open software, open controller and open mechanism architecture. That is, a machine tool user operating such a workstation should be able to add onto the software, the controller, and the mechanism architectures of the workstation in order to improve their functions.
(2) Software Modules Using Query-Based Language
Software modules have been suggested, in the above-noted paper by David Bourne, for use in an intelligent manufacturing workstation. Such modules would be split along knowledge boundaries which have been defined in industrial practice, including, e.g., tooling, operations, programming, planning and design. The software modules would be responsible for understanding commands and data specifications, and for answering questions in their own area of specialty. A particular module might be configured to request information from other modules so that it has adequate information to solve its designated problems, to communicate in a standard language, and to work an several problems at once. In addition, each module would know which other module to ask for information and provide assistance in formulating a question for the receiving module. The general software architecture proposed in the above-noted Paper is illustrated in FIG. 4. The proposed architecture includes a designer 50, a bend sequence planner 52, a module 54 for sequence planning, execution and error handling, a modeler 56, a module 58 for sensor interpretation, and modules 60, 62 for process control and holding, and fixturing. Each of the modules for sensor interpretation 58, process control 60, and holding and fixturing 62 are coupled to external machine and sensor drives 64. A control subsystem 68 is formed by several of the modules, including sequence planning, execution and error handling module 54, modeler 56, and the modules for sensor interpretation 58, process control 60 and holding and fixturing 62. Control subsystem 68 is shown as being implemented within a Chimera operating system. All of the modules may be connected to other factory systems 66, including, e.g., systems for scheduling, operations, and process planning.
(3) Design Tools
Experimentation has been conducted with design tools that constantly manage the relationship between a stock part and a final part as it is applied to sheet metal bending, as noted in the above-referenced Paper, and as disclosed by C. Wang in "A Parallel Designer for Sheet Metal Parts," Mechanical Engineering Master's Report, Carnegie Mellon (1992), the content of which is expressly incorporated herein by reference in its entirety. The design information, which may be described in 3D, or as a 2D flat pattern, is automatically maintained (in parallel) with another representation of the developing part. In this way, a connection between each of the features of the initial stock part and the final part is maintained.
(4) The Planning System
Once the design is complete, a planner typically then produces a plan which will later be used to execute the manufacturing process. The plan includes several instructions regarding the sequencing of machine operations to produce the desired part. An optimal plan will result in a reduction of setup time, a reduction in the existence of scrap after production of the parts, an increase in part quality, and an increase in production rate. To promulgate such advantages, the above-noted Paper recommends that as much specific knowledge as possible be separated from the planner so that the planner can be easily adapted to different machines and processes. A "query-based" planning system is thus proposed which shifts the emphasis of the planner to asking expert questions, rather than attempting to act as a self-contained expert.
(5) Workstation Control
The above-noted Paper proposes that the controller use an off-the-shelf engineering UNIX workstation as the core computing resource. The workstation may include in its back-plane an extension rack of special-purpose boards and an additional CPU that runs with a real-time version of the UNIX operating system, called CHIMERA-II. See, e.g., STEWART et al., Robotics Institute Technical Report, entitled "CHIMERA II: A Real-Time UNIX-Compatible Multiprocessor Operating System for Sensor Based Control Applications," Carnegie Mellon, CMU-RI-TR-89-24 (1989), the content of which is expressly incorporated by reference herein in its entirety.
(6) Geometric Modeling
Geometric modeling is an important component in intelligent machining workstations. Several modelers have been experimented with during a project in the Robotics Institute at Carnegie Mellon University. A geometric modeler called "NOODLES" has been proposed for use as a modeler in an intelligent manufacturing workstation. The NOODLES modeler is discussed by GURSOZ et al., in "Boolean Set operations on non-manifold boundary representation objects," in Computer Aided Design, Butterworth-Heinenmann LTD., Vol. 23, No. 1, January, 1991, the content of which expressly incorporated by reference herein in its entirety. The NOODLES system makes far fewer assumptions about what constitutes valid edge topologies, and thus overcomes problems with other modeling systems, which would enter into infinite loops when the edge topology of a geometric model would violate system assumptions.